package com.tang.algorithm.sort;

/**
 * 选择排序
 *
 */
public class SelectSort {
    public static void main(String[] args) {
        int arr[] = new int[80000];
        for(int i=0;i<80000;i++){
            arr[i]=(int)(Math.random()*80000);
        }
        long startTime=System.currentTimeMillis();   //获取开始时间
        selectSort(arr);
        long endTime=System.currentTimeMillis(); //获取结束时间
        System.out.println("程序运行时间： "+(endTime-startTime)+"ms");
    }

    public static void selectSort(int[] arr) {

        for(int i=0;i<arr.length-1;i++){
        int min = 0;
        int minIndex= i;
        //找出当前最小值，并把最小值和下标为i的值交换
        for(int j=0;j<arr.length;j++){
            if(min>arr[j]){
                min = arr[j];//重置min
                minIndex=j;//重置minIndex
            }
        }
        //将最小值放在arr[0]处，即交换
        if(minIndex!=i){
            arr[minIndex]=arr[i];
            arr[i]=min;
        }
        }

    }
}
